/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package BusinessLogic;

import BusinessEntity.BE_CasoPruebaEstimacion;
import BusinessEntity.BE_Estimacion;
import BusinessEntity.BE_Requerimiento;
import DataAccessObject.DA_Estimacion;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author kuntouch
 */
public class BL_Estimacion {
    private static BL_Estimacion pinstancia=null;

    public static BL_Estimacion obtenerInstancia()
    {
      if (pinstancia==null)
      {
          pinstancia=new BL_Estimacion();
      }
      return pinstancia;
    }
    
    public BE_Estimacion crearObjetoEstimacion(int intCantHoras, int intCantRecursos, int intAnalisis, int intDisenho, int intEjecucion, int intCierre, int intIdRequerimiento, ArrayList<BE_CasoPruebaEstimacion> aobjBE_CasoPruebaEstimaciones ){
        
        BE_Estimacion objBE_Estimacion = new BE_Estimacion();
        
        objBE_Estimacion.setIntTotalHoras(intCantHoras);
        objBE_Estimacion.setIntCantRecursos(intCantRecursos);
        objBE_Estimacion.setIntHorasAnalisis(intAnalisis);
        objBE_Estimacion.setIntHorasDisenio(intDisenho);
        objBE_Estimacion.setIntHorasEjecucion(intEjecucion);
        objBE_Estimacion.setIntHorasCierre(intCierre);
        
        BE_Requerimiento objBE_Requerimiento = new BE_Requerimiento();
        objBE_Requerimiento.setIdRequerimiento(intIdRequerimiento);
        objBE_Estimacion.setObjBE_Requerimiento(objBE_Requerimiento);
        
        if(aobjBE_CasoPruebaEstimaciones.size() > 0 ){
            objBE_Estimacion.setAobjBE_CasoPruebaEstimaciones(aobjBE_CasoPruebaEstimaciones);
        }else{
            objBE_Estimacion.setAobjBE_CasoPruebaEstimaciones(new ArrayList<BE_CasoPruebaEstimacion>());
        }
        
        return objBE_Estimacion;

    }
    
    public void registrarEstimacion(BE_Estimacion objEstimacion) throws InstantiationException, IllegalAccessException, SQLException{
        
        DA_Estimacion.obtenerInstancia().registrarEstimacion(objEstimacion);      
    }
 
        public int obtenerUltimaEstimacion() throws InstantiationException, IllegalAccessException, SQLException{
        
        return DA_Estimacion.obtenerInstancia().obtenerUltimaEstimacion();
    }
        
    public BE_Estimacion obtenerEstimacionIdRequerimiento(BE_Requerimiento objBE_Requerimiento) throws InstantiationException, IllegalAccessException, SQLException{
        return DA_Estimacion.obtenerInstancia().obtenerEstimacionIdRequerimiento(objBE_Requerimiento);
    }
    
}


